/**
 * 
 */
package br.com.ctm.guiamedico.bean;

import java.util.List;

import javax.enterprise.context.ConversationScoped;
import javax.inject.Inject;
import javax.inject.Named;

import br.com.ctm.guiamedico.dao.api.CidadeDao;
import br.com.ctm.guiamedico.model.Cidade;
import br.com.ctm.guiamedico.model.Uf;
import br.com.ctm.guiamedico.negocio.api.CidadeNegocio;
import br.com.ctm.guiamedico.negocio.api.UfNegocio;
import br.com.framework.apresentacao.bean.CRUDBean;
import br.com.framework.persistencia.sort.Order;

/**
 * @author Cleber
 *
 */
@Named
@ConversationScoped
public class CidadeBean extends CRUDBean<Cidade, CidadeDao, CidadeNegocio>{
	
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	
	@Inject
	private UfNegocio ufNegocio;
	
	private List<Uf> ufs;
	
	/**
	 * @param entidadeClass
	 */
	public CidadeBean() {
		super(Cidade.class);
	}

	@Inject
	protected void setNegocio(CidadeNegocio negocio) {
		super.setNegocio(negocio);
	}
	
	@Override
	protected void beforeOutcomeCreate() {
		ufs = ufNegocio.findAll("sigla", Order.ASCENDING, true);
	}
	
	@Override
	protected void beforeOutcomeEdit() {
		this.beforeOutcomeCreate();
	}

	/**
	 * @return the ufs
	 */
	public List<Uf> getUfs() {
		return ufs;
	}

	/**
	 * @param ufs the ufs to set
	 */
	public void setUfs(List<Uf> ufs) {
		this.ufs = ufs;
	}
	
	
}
